package com.study.service.impl;

import com.study.common.annotation.MyService;
import com.study.dto.TestDTO;
import com.study.service.ITestService;
import com.study.vo.TestVO;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;

import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;

/**
 * @包名称 com.study.service
 * @类描述 <pre></pre>
 * @作者 zhangbo
 * @创建时间 2020/5/31.
 * @版本 1.00
 * @修改记录 <pre>
 *     版本           修改人         修改日期         修改内容描述
 *     -----------------------------------------------------------
 *     1.00           zhangbo        2020/5/31.           类创建
 *     -----------------------------------------------------------
 * </pre>
 */
@Slf4j
@Component
@MyService
public class TestServiceImpl implements ITestService {
    @Override
    public void test() {
//        log.info("test test!!!");
//        int i = ThreadLocalRandom.current().nextInt(2);
//        if (i % 2 == 0) {
//
//        }
        throw new RuntimeException("异常测试!!");
    }

    @Override
    public String hello(String name, Integer age) {
        return "hello:" + name + ",age:" + age + ",UID" + UUID.randomUUID().toString().replace("-", "");
    }

    @Override
    public TestDTO testDto(TestVO testVO) {
        log.info("接收到请求参数：{}", testVO);
        TestDTO testDTO = new TestDTO();
        testDTO.setName(testVO.getName() + "result");
        testDTO.setAge(testVO.getAge() + 1);
        testDTO.setNowTime(LocalDateTime.now());
        TestDTO child = new TestDTO();
        child.setName("child");
        child.setNowTime(LocalDateTime.now());
        List<TestDTO> childs = new ArrayList<>(2);
        childs.add(child);
        testDTO.setChildTestDTO(childs);
        return testDTO;
    }

}
